package com.yidu.hbatsft.service;

import com.yidu.hbatsft.domain.AtsScheme;
import com.yidu.hbatsft.domain.AtsSchemeAthlete;
import com.yidu.privilege.Utils.Pages;

import java.util.List;

/**
 * 运动营养Service
 */
public interface AtsSchemeServiceNutrition {

    /**
     * 运动营养查询全部
     */
    List<AtsScheme> selectnutrition(AtsScheme record, Pages pages);

    /**
     * 运动营养查询总行数
     */
    Long selectnutritioncount(AtsScheme record);


    /**
     * 运动营养新增
     */
    int insertnutrition(AtsScheme record);


    /**
     * 运动营养逻辑删除
     */
    int deletenutrition(Integer schemeId);


    /**
     * 运动营养根据id查询
     */
    AtsScheme selectnutritionid(Integer schemeId);


    /**
     * 运动营养修改
     */
    int updatenutrition(AtsScheme record);


    /**
     * 运动营养模糊查询
     *
     * @return
     */
    List<AtsScheme> selectnutritionVague(String newTitle);


    /**
     * 运动营养批量删除
     */
    int update(Integer schemeId);


    /**
     * 运动营养新增
     * @param record
     * @return
     */
    int add(AtsScheme record);

    /**
     * 方案对应的运动员表新增
     * @param at
     * @return
     */
    int addAtsSchemeAthlete(AtsSchemeAthlete at);


    /**
     * 运动营养修改
     * @return
     */
    int updateone(AtsScheme record);


    /**
     * 方案对应的运动员表修改
     * @param at
     * @return
     */
    int updatetwo(AtsSchemeAthlete at);


    /**
     * 运用营养 查询按钮功能
     * @param id
     * @return
     */
    AtsScheme nutritionfindAllById(Integer id);


    /**
     * 运动营养查询出专家的记录
     */
    List<AtsScheme> selectExpertnu(Integer pageNum, Integer pageSize,AtsScheme atsScheme);

    /**
     * 运动营养查询出专家的记录 总行数
     */
    Long countExpertnu(AtsScheme atsScheme);

    /**
     * 运动营养查询出领导要审核的记录
     */
    List<AtsScheme>  selectAuditnu(Integer pageNum, Integer pageSize,AtsScheme atsScheme);

    /**
     * 运动营养查询出领导要审核的记录 总行数
     */
    Long countAuditnu(AtsScheme atsScheme);

    /**
     * 运动营养查询出运动员要查看的记录
     */
    List<AtsScheme> selectAthletenu(Integer pageNum, Integer pageSize,AtsScheme atsScheme);


    /**
     * 运动营养查询出运动员要查看的记录 总行数
     */
    Long countAthletenu(AtsScheme atsScheme);


    /**
     * 运动营养查询出教练要查看的记录
     */
    List<AtsScheme> findAllnu(Integer pageNum, Integer pageSize,AtsScheme atsScheme);


    /**
     * 运动营养查询出教练要查看的记录 总行数
     */
    Long countnu(AtsScheme atsScheme);


    /**
     * 运动营养查询出超级管理员要查看的记录
     */
    List<AtsScheme> supers(Integer pageNum, Integer pageSize,AtsScheme atsScheme);


    /**
     * 运动营养查询出超级管理员要查看的记录  总行数
     */
    Long supercountnu(AtsScheme atsScheme);


}
